/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.repair.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;

import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;

/**
 * 困人详情实体类
 *
 * @author zcc
 * @since 2021-05-24
 */
@Data
@TableName("blade_maintain_predicament_detail")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "MaintainPredicamentDetail对象", description = "困人详情")
public class MaintainPredicamentDetail extends TenantEntity {

	private static final long serialVersionUID = 1L;

	/**
	 * 维保任务id
	 */
	@ApiModelProperty(value = "维保任务id")
	private Long planId;
	/**
	 * 任务编号，庸与字段
	 */
	@ApiModelProperty(value = "任务编号，庸与字段")
	private String planNum;
	/**
	 * 问题id
	 */
	@ApiModelProperty(value = "问题描述")
	private String questionDesc;
	/**
	 * 地点
	 */
	@ApiModelProperty(value = "地点")
	private String address;
	/**
	 * 被救人电话
	 */
	@ApiModelProperty(value = "被救人电话")
	private String phone;
	/**
	 * 报障人姓名
	 */
	@ApiModelProperty(value = "报障人姓名")
	private String name;

	@ApiModelProperty(value = "完成时间")
	private LocalDateTime finishTime;

	@ApiModelProperty(value = "预计达到耗时时间")
	private LocalDateTime planTime;

	@ApiModelProperty(value = "问题描述项，dict_key拼接")
	private String problemItem;

	/**
	 * 故障图片
	 */
	@TableField(typeHandler = JacksonTypeHandler.class)
	@ApiModelProperty(value = "故障图片")
	private List<HashMap<String,String>> mfImgUrl;

	@TableField(exist = false)
	@ApiModelProperty(value = "电梯状态")
	private Integer elevatorIsStop;

	@ApiModelProperty("故障现象其他描述")
	private String problemOtherDesc;
}
